#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <QResizeEvent>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 创建QLabel对象并插入图片
    label = new QLabel(this);
    QPixmap pixmap(":/image/direction.png");
    label->setPixmap(pixmap);

    // QLabel对象铺满整个窗口
    // 不需要将label对象的宽高定死，这就变成了硬编码
    QRect rect = this->geometry();
    label->setGeometry(rect);

    // 使图片自动铺满QLabel
    label->setScaledContents(true);

    // 用户的操作对应着1、信号，2、事件
    // 当用户拖拽窗口大小时就会触发resize event事件。
    // 像resize event这种事件是持续触发的，因此就可以通过重写父类的resize event来实现多态
    // 这样在用户拖拽窗口时，QT会自动持续调用resize event事件

}

Widget::~Widget()
{
    delete ui;
}

void Widget::resizeEvent(QResizeEvent *event)
{
    qDebug() << event->size();
    label->setGeometry(0, 0, event->size().width(), event->size().height());
}

